const { validationResult } = require('express-validator');

/**
 * Express-validator 验证结果处理中间件
 * 检查验证结果，如果有错误则返回 400 Bad Request
 */
const validateRequest = (req, res, next) => {
  const errors = validationResult(req);
  if (!errors.isEmpty()) {
    // 只返回第一个错误信息，保持简洁
    const firstError = errors.array({ onlyFirstError: true })[0];
    return res.status(400).json({ 
      error: '请求参数验证失败', 
      field: firstError.param, // 指示哪个字段出错
      message: firstError.msg // 具体的错误消息
    });
  }
  next();
};

module.exports = { validateRequest };